package com.gl.glbooks.services;

import java.util.Date;
import java.util.List;

import org.springframework.flex.remoting.RemotingDestination;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.gl.glbooks.spring.aop.aspectj.cache.Cachea;
import com.gl.glbooks.vos.Actividad;
import com.gl.glbooks.vos.Categoria;
import com.gl.glbooks.vos.Comentario;
import com.gl.glbooks.vos.Confirmacion;
import com.gl.glbooks.vos.Editorial;
import com.gl.glbooks.vos.Ejemplar;
import com.gl.glbooks.vos.Libro;
import com.gl.glbooks.vos.Oficina;
import com.gl.glbooks.vos.PalabraClave;
import com.gl.glbooks.vos.Prestamo;
import com.gl.glbooks.vos.Sugerencia;
import com.gl.glbooks.vos.SugerenciaPDFsubido;
import com.gl.glbooks.vos.Usuario;

@Service
@RemotingDestination(channels = { "my-amf" })
@Transactional
public interface IListarServices {

	public List<Sugerencia> listarSugerencias();
	public List<Libro> listarLibros();
	public List<Prestamo> listarPrestamos();
	public List<Categoria> listarCategorias();
	public List<Editorial> listarEditoriales();
	public List<Oficina> listarOficinas();
	public List<Usuario> listarUsuarios();
	public List<Ejemplar> listarEjemplares();
	public List<PalabraClave> listarPalabrasClaves();
	public List<Actividad> listarActividadesEntreFechas( Date fechaDesde, Date fechaHasta );
	public List<Usuario> listarUsuariosResponsables();
	public List<Prestamo> listarPrestamosPorFecha(Date fechaHasta);
	public List<Prestamo> listarPrestamosPorFechaMenor(Date time);
	public List<SugerenciaPDFsubido> listarSugerenciasPDFsubido();
	public List<Comentario> listarComentarios();
	public List<Comentario> listarComentariosNovedosos(int cantidad);
	public List<Libro> listarLibrosNovedosos(int cantidad);
}
